Pendahuluan:
Di era teknologi dan eksplorasi ruang angkasa yang berkembang pesat ini, memahami dinamika peluncuran roket sangatlah penting. Dengan mendalami analisis data, kita dapat menggali informasi penting mengenai efisiensi, biaya, dan tingkat aktivitas berbagai organisasi dalam industri peluncuran roket.
Dalam analisis ini, kami akan menyelidiki empat aspek utama:
Melalui aspek-aspek ini, kami bertujuan untuk memberikan pemahaman mendalam tentang dinamika industri peluncuran roket saat ini. Wawasan semacam itu sangat berharga bagi investor, peneliti, pembuat kebijakan, dan pemangku kepentingan lainnya.
import matplotlib.pyplot as plt
import pandas as pd
from mpl_toolkits.axes_grid1 import make_axes_locatable
import geopandas as gpd
import plotly.express as px
import plotly.graph_objects as go
Pada bagian ini, kita menggunakan pustaka pandas untuk memuat dataset dari file CSV ke dalam DataFrame. Dataset ini berisi informasi tentang peluncuran roket. Setelah memuat, kita menampilkan lima baris pertama dari dataset untuk mendapatkan gambaran awal dari data tersebut.
# Memuat data dari CSV ke DataFrame
data = pd.read_csv('C:/Users/User/Documents/Portofolio/Space+Missions+(start)/mission_launches.csv')
# Menampilkan 5 baris pertama dari data
data.head()
| Unnamed: 0.1 | Unnamed: 0 | Organisation | Location | Date | Detail | Rocket_Status | Price | Mission_Status | |
|---|---|---|---|---|---|---|---|---|---|
| 0 | 0 | 0 | SpaceX | LC-39A, Kennedy Space Center, Florida, USA | Fri Aug 07, 2020 05:12 UTC | Falcon 9 Block 5 | Starlink V1 L9 & BlackSky | StatusActive | 50.0 | Success |
| 1 | 1 | 1 | CASC | Site 9401 (SLS-2), Jiuquan Satellite Launch Ce... | Thu Aug 06, 2020 04:01 UTC | Long March 2D | Gaofen-9 04 & Q-SAT | StatusActive | 29.75 | Success |
| 2 | 2 | 2 | SpaceX | Pad A, Boca Chica, Texas, USA | Tue Aug 04, 2020 23:57 UTC | Starship Prototype | 150 Meter Hop | StatusActive | NaN | Success |
| 3 | 3 | 3 | Roscosmos | Site 200/39, Baikonur Cosmodrome, Kazakhstan | Thu Jul 30, 2020 21:25 UTC | Proton-M/Briz-M | Ekspress-80 & Ekspress-103 | StatusActive | 65.0 | Success |
| 4 | 4 | 4 | ULA | SLC-41, Cape Canaveral AFS, Florida, USA | Thu Jul 30, 2020 11:50 UTC | Atlas V 541 | Perseverance | StatusActive | 145.0 | Success |
Pada bagian ini, kami melakukan beberapa langkah untuk membersihkan data
unnamed: 0 dan unnamed: 0.1.Tanggal menjadi tipe data datetime agar lebih mudah diproses pada langkah berikutnya.# Menghapus kolom yang tidak diperlukan
data.drop(['Unnamed: 0', 'Unnamed: 0.1'], axis=1, inplace=True)
# Mengubah kolom Date menjadi tipe data datetime
data['Date'] = pd.to_datetime(data['Date'])
# Menampilkan 5 baris pertama dari data yang telah dibersihkan
data.head()
| Organisation | Location | Date | Detail | Rocket_Status | Price | Mission_Status | |
|---|---|---|---|---|---|---|---|
| 0 | SpaceX | LC-39A, Kennedy Space Center, Florida, USA | 2020-08-07 05:12:00+00:00 | Falcon 9 Block 5 | Starlink V1 L9 & BlackSky | StatusActive | 50.0 | Success |
| 1 | CASC | Site 9401 (SLS-2), Jiuquan Satellite Launch Ce... | 2020-08-06 04:01:00+00:00 | Long March 2D | Gaofen-9 04 & Q-SAT | StatusActive | 29.75 | Success |
| 2 | SpaceX | Pad A, Boca Chica, Texas, USA | 2020-08-04 23:57:00+00:00 | Starship Prototype | 150 Meter Hop | StatusActive | NaN | Success |
| 3 | Roscosmos | Site 200/39, Baikonur Cosmodrome, Kazakhstan | 2020-07-30 21:25:00+00:00 | Proton-M/Briz-M | Ekspress-80 & Ekspress-103 | StatusActive | 65.0 | Success |
| 4 | ULA | SLC-41, Cape Canaveral AFS, Florida, USA | 2020-07-30 11:50:00+00:00 | Atlas V 541 | Perseverance | StatusActive | 145.0 | Success |
Menganalisis dan membandingkan jumlah roket yang masih aktif dengan roket yang sudah dipensiunkan atau tidak aktif lagi berdasarkan data yang tersedia.
# Menghitung jumlah roket yang aktif versus yang pensiun
rocket_status_counts = data['Rocket_Status'].value_counts()
# Membuat grafik batang untuk perbandingan roket aktif dan yang pensiun
plt.figure(figsize=(10, 6))
bars = plt.bar(rocket_status_counts.index, rocket_status_counts.values, color=['firebrick', 'seagreen'], edgecolor='black')
# Menambahkan nilai di atas setiap batang
for bar in bars:
yval = bar.get_height()
plt.text(bar.get_x() + bar.get_width()/2, yval + 15, int(yval), ha='center', va='bottom', fontsize=10)
plt.title('Perbandingan Jumlah Roket Aktif versus Roket yang Sudah Tidak Beroperasi')
plt.xlabel('Status Roket')
plt.ylabel('Jumlah')
plt.xticks(rotation=0)
plt.grid(axis='y', linestyle='--', linewidth=0.5)
plt.tight_layout()
plt.show()
rocket_status_counts
StatusRetired 3534 StatusActive 790 Name: Rocket_Status, dtype: int64
Pada bagian ini, kami menganalisis distribusi peluncuran roket berdasarkan status misinya. Dengan menggunakan fungsi value_counts(), kami menghitung jumlah peluncuran untuk setiap status misi dalam kumpulan data. Hasilnya akan menunjukkan berapa banyak misi yang berhasil, gagal, atau memiliki status lainnya.
# Menghitung jumlah peluncuran berdasarkan status misinya
mission_status_counts = data['Mission_Status'].value_counts()
mission_status_counts
Success 3879 Failure 339 Partial Failure 102 Prelaunch Failure 4 Name: Mission_Status, dtype: int64
Pada bagian ini, kita memvisualisasikan data yang telah dianalisis pada langkah sebelumnya. Dengan menggunakan pustaka matplotlib, kita membuat diagram batang untuk menampilkan jumlah peluncuran berdasarkan status misinya.
# Menambahkan ruang di antara plot dan judul
ax = mission_status_counts.plot(kind='bar', color='skyblue', edgecolor='black')
ax.spines['top'].set_visible(False)
ax.spines['right'].set_visible(False)
plt.title("Jumlah Peluncuran Roket Berdasarkan Status Misi", y=1.08) # Menyesuaikan posisi judul
plt.xlabel("Status Misi")
plt.ylabel("Jumlah Peluncuran")
plt.xticks(rotation=45)
# Menambahkan nilai asli di atas setiap batang
for p in ax.patches:
ax.annotate(str(p.get_height()), (p.get_x() + p.get_width() / 2., p.get_height()),
ha='center', va='center', xytext=(0, 10), textcoords='offset points')
plt.tight_layout()
plt.show()
Diagram batang di atas menunjukkan jumlah peluncuran roket berdasarkan status misinya. Berikut ini adalah interpretasi dari diagram batang di atas:
Sukses: Dengan 3879 peluncuran, ini adalah status yang paling umum. Hal ini menunjukkan bahwa sebagian besar misi peluncuran roket berhasil mencapai tujuannya tanpa masalah.
Gagal: Ada 339 misi yang gagal. Meskipun ini jauh lebih sedikit daripada jumlah misi yang berhasil, ini masih menunjukkan bahwa ada risiko yang terlibat dalam peluncuran roket.
Kegagalan Sebagian: Ada 102 misi yang mengalami kegagalan sebagian. Ini berarti bahwa misi tersebut mungkin telah mencapai sebagian dari tujuannya, tetapi tidak sesuai dengan yang diharapkan.
Kegagalan Prapeluncuran: Hanya ada 4 misi yang mengalami kegagalan sebelum peluncuran. Hal ini menunjukkan bahwa kejadian semacam ini sangat jarang terjadi, tetapi tetap penting untuk diwaspadai.
Kesimpulannya, meskipun sebagian besar misi peluncuran roket berhasil, namun masih ada sejumlah misi yang mengalami kegagalan, baik itu kegagalan total, kegagalan parsial, atau bahkan kegagalan pra-peluncuran. Hal ini mengingatkan kita akan kompleksitas dan tantangan yang ada dalam industri penerbangan antariksa.
Dalam analisis ini, kami ingin mengetahui bagaimana tren peluncuran roket berubah dari waktu ke waktu, khususnya setiap tahun. Dengan mengelompokkan data berdasarkan tahun tanggal peluncuran, kita dapat menghitung berapa kali roket diluncurkan setiap tahunnya. kami menggunakan deret waktu untuk menampilkan tren jumlah peluncuran roket setiap tahunnya. Deret waktu memberikan gambaran yang jelas tentang bagaimana tren berubah dari tahun ke tahun.
# Menghilangkan informasi zona waktu dengan cara lain
data['Date'] = data['Date'].apply(lambda x: x.replace(tzinfo=None))
# Menghitung jumlah peluncuran roket setiap tahun
yearly_launches = data.groupby(data['Date'].dt.year)['Date'].count()
# Membuat line chart untuk tren jumlah peluncuran roket setiap tahun
yearly_launches.plot(kind='line', color='purple', marker='o', linewidth=2)
plt.title("Tren Jumlah Peluncuran Roket Setiap Tahun")
plt.xlabel("Tahun")
plt.ylabel("Jumlah Peluncuran")
plt.grid(True, which='both', linestyle='--', linewidth=0.5)
plt.tight_layout()
plt.show()
# Mengambil informasi tahun dari kolom "Date" dengan pemrosesan string
data['Year'] = data['Date'].astype(str).str.split('-').str[0]
# Menghitung jumlah peluncuran per tahun
launches_per_year = data.groupby('Year').size()
launches_per_year
plt.figure(figsize=(15, 8))
bars = plt.bar(launches_per_year.index, launches_per_year.values, color='skyblue')
# Menambahkan nilai di atas setiap batang
for bar in bars:
yval = bar.get_height()
plt.text(bar.get_x() + bar.get_width()/2, yval + 2, int(yval), ha='center', va='bottom', fontsize=8)
plt.title('Jumlah Peluncuran Roket per Tahun')
plt.xlabel('Tahun')
plt.ylabel('Jumlah Peluncuran')
plt.xticks(rotation=45)
plt.tight_layout()
plt.show()
Dari grafik ini, kita dapat menyimpulkan bahwa ada periode-periode tertentu dalam sejarah peluncuran roket di mana aktivitasnya menjadi sangat intensif, diikuti dengan periode penurunan aktivitas. Faktor-faktor seperti perkembangan teknologi, kebijakan pemerintah, dinamika geopolitik, dan dampak pandemi mungkin berperan dalam mempengaruhi tren ini.
# Menghapus informasi zona waktu dan mengkonversi kembali kolom "Date" ke tipe data datetime
data['Date'] = pd.to_datetime(data['Date'].astype(str).str.split('+').str[0])
# Menghitung jumlah peluncuran roket setiap bulan
monthly_launches = data.groupby(data['Date'].dt.to_period("M"))['Date'].count()
# Membuat line chart untuk tren jumlah peluncuran roket setiap bulan
plt.figure(figsize=(15, 7))
monthly_launches.plot(kind='line', color='purple', marker='o', linewidth=2)
plt.title("Tren Jumlah Peluncuran Roket Setiap Bulan")
plt.xlabel("Bulan dan Tahun")
plt.ylabel("Jumlah Peluncuran")
plt.grid(True, which='both', linestyle='--', linewidth=0.5)
plt.tight_layout()
plt.show()
# Mengekstrak informasi bulan dari string tanggal
data['Month'] = data['Date'].astype(str).str.split('-').str[1]
# Menghitung jumlah peluncuran untuk setiap bulan
launches_per_month_total = data.groupby('Month').size()
launches_per_month_total
# Membuat grafik batang untuk jumlah peluncuran per bulan
months = ["Januari", "Februari", "Maret", "April", "Mei", "Juni", "Juli", "Agustus", "September", "Oktober", "November", "Desember"]
plt.figure(figsize=(12, 6))
bars = plt.bar(months, launches_per_month_total.values, color='lightblue')
# Menambahkan nilai di atas setiap batang
for bar in bars:
yval = bar.get_height()
plt.text(bar.get_x() + bar.get_width()/2, yval + 5, int(yval), ha='center', va='bottom', fontsize=8)
plt.title('Jumlah Peluncuran Roket per Bulan')
plt.xlabel('Bulan')
plt.ylabel('Jumlah Peluncuran')
plt.xticks(rotation=45)
plt.tight_layout()
plt.show()
Peluncuran Tertinggi di Bulan Desember: Dengan 450 peluncuran, Desember menunjukkan aktivitas peluncuran roket tertinggi dibandingkan dengan bulan-bulan lainnya. Hal ini mungkin disebabkan oleh berbagai faktor, seperti kondisi cuaca, perencanaan misi, atau faktor lain yang mendukung peluncuran di bulan ini.
Aktivitas Tinggi di Pertengahan Tahun: Juni hingga Oktober menunjukkan jumlah peluncuran yang relatif tinggi, yang mungkin mengindikasikan periode favorit untuk peluncuran roket.
Peluncuran Terendah di Bulan Januari: Dengan 268 peluncuran, Januari memiliki aktivitas peluncuran roket terendah. Hal ini mungkin disebabkan oleh beberapa faktor seperti kondisi cuaca di awal tahun atau kurangnya perencanaan misi di bulan ini.
Distribusi Peluncuran: Meskipun ada beberapa perbedaan antar bulan, tidak ada perbedaan ekstrem dalam distribusi peluncuran roket sepanjang tahun. Hal ini menunjukkan bahwa peluncuran roket terjadi dengan frekuensi yang relatif stabil sepanjang tahun.
Dari interpretasi di atas, kita dapat menyimpulkan bahwa meskipun ada beberapa variasi dalam jumlah peluncuran roket dari bulan ke bulan, peluncuran roket merupakan aktivitas sepanjang tahun dengan beberapa puncak dan lembah.
Dalam analisis ini, kami menyelidiki organisasi mana yang paling aktif meluncurkan roket. Dengan menggunakan fungsi value_counts(), kami menghitung jumlah peluncuran untuk setiap organisasi yang tercantum dalam kumpulan data. Hasilnya menunjukkan organisasi dengan aktivitas peluncuran roket terbanyak.
# Menghitung jumlah peluncuran roket berdasarkan organisasinya
organisation_counts = data['Organisation'].value_counts()
# Menampilkan 10 organisasi dengan jumlah peluncuran terbanyak
top_organisations = organisation_counts.head(10)
top_organisations
RVSN USSR 1777 Arianespace 279 CASC 251 General Dynamics 251 NASA 203 VKS RF 201 US Air Force 161 ULA 140 Boeing 136 Martin Marietta 114 Name: Organisation, dtype: int64
Dalam visualisasi ini, kami memanfaatkan pustaka matplotlib untuk membuat grafik batang yang menampilkan 10 organisasi dengan jumlah peluncuran roket terbanyak. Grafik ini memberikan representasi visual dari dominasi beberapa organisasi dalam industri peluncuran roket.
# Membuat bar chart untuk 10 organisasi dengan jumlah peluncuran terbanyak
ax2 = top_organisations.plot(kind='bar', color='lightgreen', edgecolor='black')
ax2.spines['top'].set_visible(False) # Menghilangkan garis atas
ax2.spines['right'].set_visible(False) # Menghilangkan garis kanan
plt.title("10 Organisasi dengan Jumlah Peluncuran Terbanyak", y=1.08) # Menambahkan ruang di antara plot dan judul
plt.xlabel("Organisasi")
plt.ylabel("Jumlah Peluncuran")
plt.xticks(rotation=45, ha='right')
# Menambahkan nilai asli di atas setiap batang
for p in ax2.patches:
ax2.annotate(str(p.get_height()), (p.get_x() + p.get_width() / 2., p.get_height()),
ha='center', va='center', xytext=(0, 10), textcoords='offset points')
plt.tight_layout()
plt.show()
Interpretasi Grafik:
Dari grafik ini, kita dapat menyimpulkan bahwa beberapa organisasi memiliki peran dominan dalam sejarah peluncuran roket, baik karena sejarah, teknologi, atau kebijakan tertentu yang mereka miliki.
# Analisis statistik deskriptif untuk kolom harga
price_description = data['Price'].describe()
price_description
count 964 unique 56 top 450.0 freq 136 Name: Price, dtype: object
# Mengonversi kolom 'Price' menjadi tipe data numerik
data['Price'] = pd.to_numeric(data['Price'], errors='coerce')
# Membuat histogram untuk distribusi harga
plt.figure(figsize=(10, 6))
plt.hist(data['Price'].dropna(), bins=50, color='lightblue', edgecolor='black')
plt.title("Distribusi Harga Peluncuran Roket")
plt.xlabel("Harga")
plt.ylabel("Frekuensi")
plt.grid(True, which='both', linestyle='--', linewidth=0.5)
plt.tight_layout()
plt.show()
Dari histogram yang ditampilkan, kita dapat membuat interpretasi:
Dengan demikian, kita dapat menyimpulkan bahwa meskipun ada beberapa peluncuran roket dengan biaya yang sangat tinggi, sebagian besar peluncuran roket memiliki biaya yang relatif lebih rendah hingga menengah.
# Ekstraksi negara dari kolom 'Location'
data['Country'] = data['Location'].str.split(', ').str[-1]
# Menghitung jumlah peluncuran untuk setiap negara
launches_per_country = data['Country'].value_counts().reset_index()
launches_per_country.columns = ['Country', 'Number_of_Launches']
launches_per_country.head()
| Country | Number_of_Launches | |
|---|---|---|
| 0 | Russia | 1395 |
| 1 | USA | 1344 |
| 2 | Kazakhstan | 701 |
| 3 | France | 303 |
| 4 | China | 268 |
fig = go.Figure(data=go.Choropleth(
locations=launches_per_country['Country'],
z=launches_per_country['Number_of_Launches'],
locationmode='country names',
colorscale="greens",
autocolorscale=False,
reversescale=False,
marker_line_color='black',
marker_line_width=0.5,
colorbar_title='Number of Successful'
))
# Menyesuaikan latar belakang dan detail peta
fig.update_geos(
showland=True,
showcountries=True
)
fig.update_layout(
title="Distribusi Aktivitas Keberhasilan Peluncuran Roket per Negara",
geo=dict(
showframe=False,
showcoastlines=True
)
)
# Menampilkan peta
fig.show()
Berikut adalah 10 negara dengan jumlah peluncuran roket terbanyak berdasarkan data yang tersedia:
Dari daftar ini, kita dapat melihat bahwa Rusia dan Kazakhstan mendominasi dalam hal jumlah peluncuran roket, dengan Rusia memiliki hampir dua kali lebih banyak dari Kazakhstan. Negara-negara lain dalam daftar ini juga memiliki kontribusi yang signifikan dalam industri peluncuran roket.
# Memfilter data untuk peluncuran yang gagal
failed_launches = data[data['Mission_Status'] == 'Failure']
# Menghitung jumlah peluncuran yang gagal untuk setiap negara
failed_launches_per_country = failed_launches['Country'].value_counts().reset_index()
failed_launches_per_country.columns = ['Country', 'Number_of_Failures']
failed_launches_per_country.head()
| Country | Number_of_Failures | |
|---|---|---|
| 0 | USA | 127 |
| 1 | Kazakhstan | 72 |
| 2 | Russia | 62 |
| 3 | China | 19 |
| 4 | France | 13 |
fig_failure = go.Figure(data=go.Choropleth(
locations=failed_launches_per_country['Country'],
z=failed_launches_per_country['Number_of_Failures'],
locationmode='country names',
colorscale="reds",
autocolorscale=False,
reversescale=False,
marker_line_color='black',
marker_line_width=0.5,
colorbar_title='Number of Failures'
))
# Menyesuaikan latar belakang dan detail peta
fig_failure.update_geos(
showland=True,
showcountries=True
)
fig_failure.update_layout(
title="Distribusi Aktivitas Kegagalan Peluncuran Roket per Negara",
geo=dict(
showframe=False,
showcoastlines=True
)
)
# Menampilkan peta
fig_failure.show()
--------------------------------------------------------------------------- NameError Traceback (most recent call last) ~\AppData\Local\Temp\ipykernel_16868\1351174828.py in <module> ----> 1 fig_failure = go.Figure(data=go.Choropleth( 2 locations=failed_launches_per_country['Country'], 3 z=failed_launches_per_country['Number_of_Failures'], 4 locationmode='country names', 5 colorscale="reds", NameError: name 'go' is not defined
Dari Peta Choropleth yang menunjukkan jumlah kegagalan peluncuran roket per negara, kita dapat melihat bahwa beberapa negara memiliki jumlah kegagalan yang lebih tinggi dibandingkan dengan negara lainnya. Hal ini mungkin disebabkan oleh berbagai faktor, termasuk jumlah total peluncuran, teknologi yang digunakan, dan kondisi peluncuran.
Daftar 10 Negara dengan Jumlah Kegagalan Peluncuran Roket Terbanyak:
Dari daftar di atas, Kazakhstan dan Rusia adalah dua negara dengan jumlah kegagalan peluncuran roket terbanyak. Namun, penting untuk diingat bahwa kedua negara ini juga memiliki jumlah peluncuran roket yang tinggi, sehingga jumlah absolut kegagalan mungkin tidak mencerminkan efisiensi atau keandalan program peluncuran roket mereka secara keseluruhan.
# Menghitung total misi dan total kegagalan per tahun
total_missions_per_year = data.groupby('Year').size()
failures_per_year = data[data['Mission_Status'] == 'Failure'].groupby('Year').size()
# Menghitung persentase kegagalan
failure_percentage_per_year = (failures_per_year / total_missions_per_year) * 100
failure_percentage_per_year.head()
plt.figure(figsize=(15, 7))
failure_percentage_per_year.plot(linestyle='-', marker='o', color='red')
plt.title('Persentase Kegagalan Peluncuran Roket Sepanjang Waktu')
plt.xlabel('Tahun')
plt.ylabel('Persentase Kegagalan (%)')
plt.grid(True, which='both', linestyle='--', linewidth=0.5)
plt.tight_layout()
plt.show()
Kegagalan Awal yang Tinggi: Pada tahun-tahun awal eksplorasi ruang angkasa (akhir 1950-an hingga awal 1960-an), persentase kegagalan cukup tinggi, mencapai lebih dari 70% dalam beberapa tahun.
Peningkatan Terus Menerus: Sejak pertengahan 1960-an, telah terjadi tren penurunan yang konsisten dalam persentase kegagalan. Hal ini menunjukkan bahwa negara-negara mulai meningkatkan teknologi dan prosedur peluncuran mereka, sehingga mengurangi risiko kegagalan.
Peningkatan Stabilitas pada tahun 2000-an: Pada dekade 2000-an, persentase kegagalan menjadi lebih stabil dan relatif rendah, yang menunjukkan bahwa teknologi peluncuran telah menjadi lebih matang dan dapat diandalkan.
Kegagalan Rendah dalam Beberapa Tahun Terakhir: Dalam beberapa tahun terakhir, persentase kegagalan sangat rendah, yang menunjukkan kemajuan yang signifikan dalam teknologi peluncuran roket dan keberhasilan.
Dari interpretasi ini, kita dapat menyimpulkan bahwa negara-negara memang telah meningkatkan kemampuan mereka untuk meluncurkan roket dari waktu ke waktu, dengan risiko kegagalan yang semakin berkurang.
# Menghitung total keberhasilan per tahun
successes_per_year = data[data['Mission_Status'] == 'Success'].groupby('Year').size()
# Menghitung persentase keberhasilan
success_percentage_per_year = (successes_per_year / total_missions_per_year) * 100
# Membuat grafik garis untuk persentase keberhasilan
plt.figure(figsize=(15, 7))
success_percentage_per_year.plot(linestyle='-', marker='o', color='green')
plt.title('Persentase Keberhasilan Peluncuran Roket Sepanjang Waktu')
plt.xlabel('Tahun')
plt.ylabel('Persentase Keberhasilan (%)')
plt.grid(True, which='both', linestyle='--', linewidth=0.5)
plt.tight_layout()
plt.show()
Keberhasilan Awal yang Rendah: Pada tahun-tahun awal eksplorasi ruang angkasa (akhir 1950-an hingga awal 1960-an), persentase keberhasilannya relatif rendah, di bawah 50% dalam beberapa tahun.
Peningkatan Berkelanjutan: Sejak pertengahan 1960-an, telah terjadi tren peningkatan yang konsisten dalam persentase keberhasilan. Hal ini menunjukkan bahwa negara-negara mulai meningkatkan teknologi dan prosedur peluncuran mereka, sehingga meningkatkan peluang keberhasilan.
Stabilitas Tinggi pada tahun 2000-an: Pada dekade 2000-an, persentase keberhasilan menjadi lebih stabil dan relatif tinggi, yang menunjukkan bahwa teknologi peluncuran telah menjadi lebih matang dan dapat diandalkan.
Keberhasilan Tinggi dalam Beberapa Tahun Terakhir: Dalam beberapa tahun belakangan ini, persentase keberhasilan sangat tinggi, mendekati 100% pada beberapa tahun, yang mengindikasikan keefektifan dan keandalan teknologi peluncuran saat ini.
Dari interpretasi ini, kita dapat menyimpulkan bahwa negara-negara telah secara signifikan meningkatkan kemampuan mereka untuk meluncurkan roket dari waktu ke waktu, dengan peluang keberhasilan yang meningkat.